const chalk = require('chalk')
const {exec} = require('child_process')
const fs = require('fs')

/**
 * @description
 *  `
 * 写一个正确的命令 git log --oneline --graph
 *
 * 写一个错误的命令 git log --oneline --graph 121  测试 error ,其实 error 就是普通的 Error 对象
 * `
 */
exec('git log --oneline --graph', (error, stdout, stderr) => {
  if(error) {
    fs.writeFileSync('./error-log.txt', error.message)
    return
  }
  console.log(chalk.blue('数据类型--》',Object.prototype.toString.call(stdout))) // [object String]

  fs.writeFileSync('./git日志.txt', stdout)
})

/**
 * 使用 exec 执行 shell , 获取npm 的 源
 */
exec('npm config get registry', (error, stdout, stderr) => {
  console.log(chalk.blue('获取到的结果-- >', stdout))
})

/**
 * 使用 cat 命令查看 package.json中的内容
 */
exec('cat ../../package.json', (error, stdout, stderr) => {
  console.log(chalk.blue('使用 cat 命令查看 package.json中的内容-- >', stdout))
})
